<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    /**
     * 封装一个函数 sendAjax 发送Get Ajax 请求
     * 参数 URL
     * 返回结果 Promise 对象
     * 总结：用promise封装ajax请求成一个函数 直接调用返回一个promise对象，通过then方法处理结果
     */

     function sendAjax(url) {
       return new Promise((resolve, reject) => {
         const xhr = new XMLHttpRequest();
         // 初始化 XMLHttpRequest 对象
         xhr.open('GET', url);
         //发送请求
         xhr.send();
         //处理结果
         xhr.onreadystatechange = function() {
           if (xhr.readyState === 4) {
             if (xhr.status === 200) {
               resolve(xhr.response);
             } else {
               reject(new Error('请求失败'));
             }
           }
         };
       });
     }
     
     // 调用函数
     sendAjax('https://www.baidu.com')
      .then(data =>{
        
      }, error => {
         console.log(error);
      })
  </script>
</body>
</html>